Workspace

Modified on 2011/02/25 16:47 by John — Categorized as: Jetfire Language

Workspace Overview

Workspace is represented as a workflow object that has functionality similar to a directory in a file system. The workspace is permanently stored in the server nexus. All Workflows reside within a single workspace. Like a file system permissions can be assigned to a workspace via roles. Workspaces support:

Public Workspace

When Jetfire is started for the first time a "Public" workspace with no access restrictions is automatically created. All workflow objects that are created will reside inside the public workspace by default. No other workspaces are necessary unless advanced functionalilty is required.

Creating a Workspace

Workspaces can be created like any workflow with the 'new' construct. It is recommended to make the new workspace a 'root' object as they may be no other references to the workspace.
workspace mySpace = new workspace("MyCoolSpace") at root;

Assigning Access Roles

Roles can be assigned to a workspace by 2 mechanisms.
  1. A workspace is a workflow, therefor a roles can be assigned as would be assigned to any workflow. Roles assigned in this manner restrict access to the workspaces and all objects contained in the workspace.
  2. Roles may also be assigned to a workspace so only the contents of workspace have restricted access. This is useful when it is desirable to make the workspace visible, but not its contents.

Partial Cached Workspace

A workspace, by default, has its contents fully cached in the client nexus. To restrict which objects are cached the following code can be used.
workspace mySpace = new workspace("MyCoolSpace") at root;
// The contents of the workspace are only to be cached
// in the client nexus when they are explicitly referenced.
mySpace.IsAutoCached = false;


See Also